@
3年前 提问
1个回答

c语言scanf输入格式

帅末
3年前

scanf函数称为格式输入函数,即按用户指定的格式从键盘上把数据输入到指定的变量之中。scanf函数是一个标准库函数,它的函数原型在头文件“stdio.h”中。与printf函数相同,C语言也允许在使用scanf函数之前不必包含stdio.h文件。

scanf函数的一般形式为:

scanf(“格式控制字符串”, 地址表列);

其中,格式控制字符串的作用与printf函数相同,但不能显示非格式字符串,也就是不能显示提示字符串。地址表列中给出各变量的地址。地址是由地址运算符“&”后跟变量名组成的。

使用scanf函数还必须注意以下几点:

  • scanf函数中没有精度控制,如:scanf(“%5.2f”,&a);是非法的。不能企图用此语句输入小数为2位的实数;

  • scanf中要求给出变量地址,如给出变量名则会出错。如 scanf(“%d”,a);是非法的,应改为scnaf(“%d”,&a);才是合法的;

  • 在输入多个数值数据时,若格式控制串中没有非格式字符作输入数据之间的间隔则可用空格,TAB或回车作间隔。C编译在碰到空格,TAB,回车或非法数据(如对“%d”输入“12A”时,A即为非法数据)时即认为该数据结束;

  • 在输入字符数据时,若格式控制串中无非格式字符,则认为所有输入的字符均为有效字符。